package com.atguigu.spzx.cloud.order.feign;

import com.atguigu.spzx.cloud.order.entity.User;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;

/**
 * Feign接口：用于远程接口调用
 *
 *  原理：动态代理
 */
@FeignClient("spzx-cloud-user") //指定远程调用服务名称
public interface UserFeignClient {

    //与远程被调用controller方法声明一致。别忘记父路径。
    //OpenFeign远程调用要重新构建请求：
    @GetMapping("/api/user/findUserByUserId/{id}")
    public User findUserByUserId(@PathVariable("id") Long id); //@PathVariable不能省略value属性，解析参数及主键，赋值给占位符。
}
